/*
 * File:   mcMath.h
 * Author: Thales Luis
 *
 * Created on September 30, 2009, 5:33 PM
 */

#ifndef _MC_MATH_
#define	_MC_MATH_

#include <math.h>
#include <assert.h>
#include <iostream>
#include <string>

#include "mcVector.h"
#include "mcMatrix.h"
#include "mcQuaternion.h"

#define EPSILON 0.00001


/**
 * @brief Converte um ângulo de graus para radianos
 *
 * @param angle - Ângulo em graus
 * @return O ângulo em radianos
 */
template <typename T>
inline float deg_2_rad( const T &angle ) {
    return (float) (angle * M_PI / 180.0);
}


/**
 * @brief Converte um ângulo de radianos para graus
 *
 * @param angle - Ângulo em radianos
 * @return O ângulo em graus
 */
template <typename T>
inline float rad_2_deg( const T &angle ) {
    return (float) (angle * 180.0 / M_PI);
}



#endif	/* _MCLEARY_H */

